Private dialing plan for voice on a packet-based network

ABSTRACT

A private dialing plan for the communication of packetized voice on a packet-based network using a signaling protocol such as Q.931 to establish, maintain and release switched connections over the network. The dialing plan uses a “telephone number” based on a conventional 10-digit telephone number, such as the user&#39;s regular telephone number. A leading single digit consisting of a “0” or a “1” is added in front of the conventional telephone number. A leading “0” indicates that the desired call is to be directed to the called party&#39;s on-network computer by means of the Internet, while a leading “1” indicates the call is directed through a special gateway to the called party&#39;s conventional telephone.

This application claims the benefit of U.S. Provisional Application No.60/134,871, entitled “Private Dialing Plan for Voice on a Packet-BasedNetwork,” filed on May 19, 1999, and of U.S. Provisional Application No.60/152,045, entitled “Private Dialing Plan for Voice on a Packet-BasedNetwork,” filed on Sep. 2, 1999, the subject matter of which isincorporated herein by reference.

BACKGROUND OF THE INVENTION

1) Technical Field

This invention relates generally to Internet Telephony, and morespecifically to telephone dialing protocols.

2) Discussion of Prior Art

In conventional telephone systems, telephone numbers are a series ofsignaling or identifying digits that are used for a variety of purposes.A common use is dialing a telephone number corresponding to a telephonethat a caller wishes to reach. Other uses include various telephoneidentification roles (such as caller ID or call-returning services) orfor billing a call to a particular telephone account. A standard planfor assigning telephone numbers, such as the North American telephonenumbering plan, is generally used as the basis for assigning telephonenumbers for the Public Switched Telephone Network (PSTN). Inconventional telephone service, a dialing plan refers to the callingmethods, shortcuts and services which a caller selects based on thepresence or absence of special digits or symbols (#,*) which areappended to the assigned telephone number or used in place of thetelephone number. For example, with conventional telephone service,calls outside the local area code are dialed starting with a “1,”international calls are dialed starting with “011,” and custom callingservices such as call return, call forwarding or speed dialing of storedtelephone numbers are often selected by dialing shortcuts consisting ofone or two digits and a symbol.

Internet Telephony bypasses portions of the PSTN and instead routestelephone calls over the Internet, typically avoiding long distancetelephone charges. Previously, Internet Telephony required users tomaster a complex set of information and have a certain familiarity withInternet Protocol (IP) addresses, nickname servers, and URL terminology.This unfamiliar and sometimes arcane set of access methodologies impededthe growth of Internet Telephony because everyday consumers found itexcessively complicated compared with traditional telephony.

The most commonly-used technology for Internet Telephony is NetMeeting,developed by Microsoft. NetMeeting requires two access methodologies forusers to find and connect to each other. The first is for a user to logonto a series of servers called ILS servers and wait for the correctserver to be explicitly identified by the e-mail address of the otherparty. Once the e-mail address is displayed, the user can click on theaddress link that will send the other party a message requesting thatthey accept the telephone connection. On the surface this seemsuncomplicated, but increasing numbers of NetMeeting users keep the ILSservers too busy for new connections. Hence, there is no way for anentering user to connect with another user until someone leaves the ILSserver, thus allowing access and subsequently a connection.

NetMeeting's second access methodology for using Internet Telephonyfurther confounds users. A connection must be established by enteringthe other party's IP address in order to notify them that the callerwould like to make a telephonic connection. The major impediment tomaking a successful connection using this method is that some dial-upusers have a different IP address each time they log in. Casual Internetusers must master of a complex set of utilities beyond their typicalcompetency just to look up their own current IP address. Even if acalling user can determine his correct IP address, it must be relayed tothe called user. This requires making a telephone call or sending anelectronic mail message, which tends to defeat the utility of InternetTelephony.

There is, therefore, a need to overcome the above-cited shortcomings oftoday's Internet Telephony.

SUMMARY OF THE INVENTION

The present invention makes Internet Telephony as simple to use as aconventional telephone. The invention permits simple, telephone-likenumbers to be used for Internet Telephony. The invention helps makeInternet Telephony more universal, and provides users a robust systemthat is both readily available and easily understandable.

With the dialing plan of the invention, the telephone number plans anddialing plans of conventional telephone systems are expanded andmodified to be well-suited to an Internet-based system.

The dialing plan of the present invention uses a signaling protocol suchas Q.931 to establish, maintain and release switched connections over apacket-based network. The dialing plan uses conventional telephonenumbers as a basis for identifying both the calling party and the calledparty. Database search keys based on conventional telephone numbers ofdialing plan members are used to access various plan databaseinformation, such as the user's IP address and any optional services orfeatures available for that member.

The invention herein will be called the ZeroPlus dialing plan.

After users have registered their conventional telephone numbers in theZeroPlus system, users may make telephone calls on-net to on-net,off-net to on-net, on-net to off-net, and off-net to off-net. TheZeroPlus number is user-specific, and, once assigned through theZeroPlus system, becomes the user's permanent Internet telephone numberfor ZeroPlus calls.

Registered users may use a conventional telephone to call a ZeroPlusInternet Telephony gateway. Once connected to that number, members areprompted for a Personal Identification Number (PIN) code, enabling theoff-net call. Registered users who are away from a computer can simplydial either a local direct-dial telephone access number for ZeroPlus, ifavailable, or, for a nominal additional charge, dial a 1-800 number.

This private dialing plan is called “ZeroPlus,” referring to the factthat on-net calls are placed by dialing “0” plus a conventionaltelephone number.

Adding to this simplicity is that user's Internet Telephone numbers arebased on one of the user's normal telephone numbers. Not only is thenumber easy to use and remember, it is assigned to a respective userpermanently for his or her exclusive use on the ZeroPlus system.Consequently, users can contact each other without having to remember anew number, nickname, IP address, or e-mail address as in other InternetTelephony methods. The primary difference between using a traditionaltelephone number and an Internet telephone number according to theinvention is that when an on-net member who is logged onto the ZeroPlusgateway dials an on-net counterpart, “0” plus the number are dialed asopposed to the traditional “1” plus the number dialed for traditionallong distance telephone calls.

Placing and receiving a ZeroPlus call either on or off the Internet issimple and transparent for the user, requiring no special training ortechnical competency. In so far as possible, the ZeroPlus invention hasa user interface that closely resembles a conventional telephone system.When a ZeroPlus call is placed to the IP address of an on-linedestination computer which has the ZeroPlus client installed andrunning, the destination computer will generate an audible ring. Thecall originator will hear a “ringback” sound analogous to that heard ona traditional telephone network. The ID of the current calling partywill be passed to the computer of the called party. The called party canchoose to answer the call by “picking up” the incoming call much like anormal telephone call, if the current status of the data networkpermits. If the called party is not on-line or does not have theZeroPlus client launched, then the calling party will hear a “fast busy”sound, indicating that the party is not currently on-line, againemulating the traditional telephone network.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an end-to-end diagram of the private dialing plan network;

FIG. 2 shows several of the dialing sequences used in the plan;

FIG. 3 is a diagram of activities associated with a simple PC-to-PCcall;

FIG. 4 shows the Gatekeeper Message format;

FIG. 5 shows the Gatekeeper Request Message Information Elements format;

FIG. 6 a shows the Gatekeeper Confirmation Message Information Elements(Section 1) format;

FIG. 6 b shows the Gatekeeper Confirmation Message Information Elements(Section 2) format;

FIG. 7 shows the Gatekeeper Rejection Message Information Elementsformat;

FIG. 8 shows the Admission Request Message Information Elements format;

FIG. 9 a shows the Admission Confirmation Message Information Elements(Section 1) format;

FIG. 9 b shows the Admission Confirmation Message Information Elements(Section 2) format;

FIG. 10 shows the Admission Reject Message Information Elements format;

FIG. 11 shows the Authorizing Request Message Information Elementsformat;

FIG. 12 shows the Authorizing Confirmation Message Information Elementsformat;

FIG. 13 shows the Authorizing Rejection Message Information Elementsformat;

FIG. 14 a shows the End of Call Message Information Elements (Section 1)format;

FIG. 14 b shows the End of Call Message Information Elements (Section 2)format;

FIG. 15 shows the End of Call Ack Message Information Elements format;

FIG. 16 shows the Bandwidth Request Message Information Elements format;

FIG. 17 shows the Bandwidth Confirmation Message Information Elementsformat;

FIG. 18 shows the Bandwidth Reject Message Information Elements format;

FIG. 19 shows the FaxCall Message Information Elements format;

FIG. 20 shows the GK Trunks Busy Message 0x4E Information Elementsformat;

FIG. 21 shows the GK Trunks Busy ACK Message 0x4F Information Elementsformat;

FIG. 22 shows the GK Trunks Busy ACK Message 0x4E Information Elementsformat;

FIG. 23 shows the GK Trunks Unbusy Message 0x4C Information Elementsformat;

FIG. 24 shows the GK Trunks Unbusy ACK Message 0x4D Information Elementsformat;

FIG. 25 shows the Heartbeat Message Information Elements format;

FIG. 27 is a diagram of activities associated with a forward on busyPC-to-PC call;

FIGS. 28 a and 28 b are a diagram of activities associated with aforward on no-answer PC-to-PC call;

FIG. 29 is a diagram of activities associated with a forward onno-response PC-to-PC call;

FIGS. 30 a and 30 b are a diagram of activities associated with callwaiting during a PC-to-PC call;

FIGS. 31 a, 31 b and 31 c are a diagram of activities associated with ablind transfer during a PC-to-PC call;

FIGS. 32 a, 32 b and 32 c are a diagram of activities associated with aconsultative transfer during a PC-to-PC call; and

FIG. 33 is a diagram of activities associated with atelephone-to-telephone call.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

As shown in FIG. 1, ZeroPlus has a unique multi-access architecture.Calls are managed by Internet “gatekeepers.” Users can make telephoneconnections to or from Internet-based computers 103, 157 and 159, andalso make connections to or from conventional analog telephones 101 and155. For illustrative purposes it is assumed that user computer A 103initiates the call, and user computer B 157 or user computer C 159receives the call. The roles of caller and receiver can be interchangedamong these user computers. A ZeroPlus gatekeeper 115 A receivesZeroPlus on net calls over the Internet or another network from aninitiating user computer A 103, or over a telephone line through thePSTN from an initiating conventional telephone 101. The gateway convertsthe analog telephone signals into data packets for transmission on thenetwork. Gatekeeper 115 determines exactly how to route the call througheither Internet 129, or some combination of conventional telephonenetworks. A call directed to an on-net computer IP address is routedthrough Internet 129 to the destination user computers B 157 or C 159. Acall directed to an off-net conventional telephone is routed from theInternet through a regional gateway 131 to one of several regional orlocal telephone carrier destination “hubs” 143, and then to thereceiving conventional telephone 155.

Traditional telephone networks require large, complex business andtechnical departments whose job it is to add and connect new users andto bill existing users. The ZeroPlus system allows new users to berapidly connected to the system by logging onto the Internet andcompleting an on-line form. This information is then stored in theZeroPlus database where it can be retrieved to verify assigned usertelephone numbers, define a user profile and generate on-line billing bymatching usage with user data stored in the database. This eliminatesmuch of the workforce typically required in traditional telephony,significantly reducing the cost of user acquisition and maintenance.

On a traditional telephone network, users are not connected until atechnician receives the customer information on a work order anddetermines and implements the required connections to the telephonenetwork. This often involves a delay of days or weeks. ZeroPlus usersare given immediate access to the ZeroPlus system by virtue of itsability to store registration data, to interact in real time with thesystem database and to immediately assign and validate a telephonenumber. Upon completion of the new user processing, users areimmediately e-mailed a personal PIN code so they can begin using theservice. Provided they have ZeroPlus software loaded and launched ontheir systems, have entered their user access number, and are allowed tomake the call by the gate keeper, ZeroPlus users have immediate accessto any on-net ZeroPlus user computer or off-net PSTN telephone number.

Conventional telephones usually connect to the PSTN through a physicalconnection made between a set of copper wires and a Class 5 switch atthe PSTN central office. On the ZeroPlus network, users are connectedvia an analog modem, cable modem, Digital Subscriber Line (DSL) modem,Integrated Services Digital Network (ISDN) modem, 802.11 wireless modem,or any other digital network access that is now, or in the future willbecome, available.

An important benefit of the ZeroPlus telephone numbering scheme is that,through the use of a Primary Rate Interface (PRI) digital gateway andthe ZeroPlus numbering scheme, every digital call center switch andIntegrated Voice Response (IVR) system in existence can route ZeroPluscalls. This means that call centers can benefit from their existinginvestment in call center technology to route calls from the PSTN.Unlike competing systems that use nicknames and e-mail addresses, whenZeroPlus calls are received, existing switches, PBX, or IVR systems canbe configured to route ZeroPlus calls to call center agents just likecalls that have originated from the PSTN.

Signing up for ZeroPlus service is simple and user friendly. NewZeroPlus users visit the ZeroPlus website to sign up and initiateservice. A Registration page collects information about customers tocreate a database of user and routing information. During the sign-upprocess, a sequence of messages is displayed to the user. The variousmessages and user interfaces described herein are illustrative examplesof how the sign-up process is conducted.

After potential users request an Internet Phone number, a legal contractappears which the registrant is asked to carefully consider and eitheraccept or decline. At the end of the contract, two buttons appear,inviting the registrant the option of indicating “I accept” or “Idecline.”

After accepting, the first field entered will be the user's e-mailaddress. After inputting the e-mail address, a search is done to ensurethat the entered e-mail address does not already have an assigned aphone number. If it does, the user will be notified of the ineligibilityfor a new ZeroPlus telephone number for that entered e-mail address.Otherwise, the process will continue.

Fields are provided so that the customer can input:

First Name

Last Name

Address 1

Address 2

City

State (pull down selection menu)

Zip Code

Home Phone Number

Password (at least eight characters)

Entry for two friends or business acquaintances who should be contactedregarding the service. An e-mail will automatically be generated tothose e-mail addresses, such as, “first name, last name has asked us toinform you that he/she has just received his/her Internet Phone Numberfrom www.ZeroPlus.com. If you wish to talk to first name for free,whenever online, please visit us and get your own ZeroPlus Number!”

After inputting the information, two buttons appear at the end of thefields, one for “Give Me My Internet Phone Number” and the other for“Clear Fields.”

After the user has submitted the customer information, the servicesearches the database to verify that the requested number has not beenpreviously registered. If it has not, the service responds by offeringthe customer the desired telephone number, which displays a screen, forexample, which says,

Your new Internet phone number is “0+home phone.” Do you want to keepthis number or would you like us to offer another one? If you wish toselect another number, it must start with 0+XXX as the first fournumbers.

A “Keep this number” or “Propose another number” button appears at thebottom of the page.

If a user wants to propose a special telephone number, the user islimited to telephone numbers within their current area code. If theperson wants to select another number, a screen appears that says,

“I wish to have the following Internet phone number:”

The screen should show 0+XXX-______ ______, where the last seven digitscan be selected by the user, and the XXX is their current area code.

After the information has been entered, two buttons appear at the end ofthe fields, one for “Submit my Internet telephone number” and the otherfor “Clear fields.”

The service searches for the number, and if it's available, tells theuser:

Congratulations! Your new Internet telephone number is 0+XXX-____________. Please write it down.

If the requested number is not available, the program scrolls throughthe number database until it finds the next available sequential number,and offers that number to the user:

The number you requested is not available. The next closest number is0+XXX-______ ______. Would you like to keep this number?

“Keep this number” and “Propose another number” buttons appear at thebottom of the page.

This process continues until the user has chosen a permanent Internettelephone number.

Some numbers will be blocked by this system. If a customer requests an800, 888, 100, 200, 300, 400, 500, 600, 700, 877, or 900 number, ascreen appears indicating:

The 0+______ ______ number you requested has been reserved for theholder of the existing telephone number. If you or your company own thisexisting number and wish to use it as your Internet phone number, pleasecall us at 1-800-______ ______

Two buttons should appear, saying “Propose another number” or “Back tohome page” sending the person back to the original link.

The final screen for completion asks whether the user wants his or hernumber listed in the 0+directory (“White Pages”). The user selects oneof three choices:

“I wish to have my Internet telephone number listed in the 0+ directory,along with my name, city, state, and country.”

“I wish to have my Internet telephone number listed in the 0+ directory,along with my name only.”

I do not wish to have my Internet telephone number listed in the 0+directory

The final screen also provides users with the option be notified ofadditional features that are available from the ZeroPlus service. Thecustomer selects one of two choices:

“Please notify me by e-mail when new ZeroPlus services are available”

“Do not notify me when new services are available.”

In addition to a discrete telephone number, each user will be requiredto have a unique nickname, which is equivalent to an e-mail address. Theuser should be able to propose a nickname, find out if it has beentaken, and if it has, have the opportunity to propose another nickname.The screens are developed similarly to those listed under “ZeroPlusNumber Proposal.”

After the user has selected their Internet telephone number, he/she willautomatically be able to download the client GUI. Any systemrequirements will be listed, and a button will be clicked to “Download0+ Software.”

As this information is collected and logged into the database, adirectory system enables users to look up a person's Internet telephonenumber on ZeroPlus' “White Pages” by inputting names, addresses, city,state, etc.

When for example, user computer A 103 logs in, it notifies thegatekeeper of its IP address. Each gateway accepts calls that are routedto it based on the routing tables that are set up on the gatekeeper.Every time an administrator adds a new gateway, the routing tables mustbe updated to ensure that the gateway will handle all PSTN-bound callsin a particular set of area codes. The gateway will only handle callsthat the administrator has routed to it.

If a ZeroPlus user dials a local PSTN to place a call at least partiallyrouted over the Internet, he or she will be greeted by a voice askingfor the ZeroPlus number followed by the PIN Code. Once the caller entersthat information and press the pound (#) key, the caller will be askedfor the number that they wish to call. At this point they are given theoption of dialing either zero (0) plus the number (e.g “0 301 6010000”), or one (1) plus the number (e.g. “1 301 601 0000”) followed bythe pound (#) key. If the user dials a ZeroPlus number the gatekeeperwill be contacted and provide the IP address of the ZeroPlus member'spersonal computer (PC). If the leading number dialed is “1,” thegatekeeper provides the IP address of the gateway responsible forterminating calls to that area and city code. One plus numbers' routesare determined by the administrator's entry into the routing tables.ZeroPlus numbers are routed according to the IP address assigned by theISP when the user logged into the ISP's service.

A dialed number is converted into an IP address by a simple process. Thecaller enters zero (“0”) plus a ten digit telephone number into a clientZeroPlus application by either of two methods. One is by clicking thenumber buttons on the application GUI which simulates the touch-tone padon a standard telephone. The other method is to use the numbers on thecomputer keyboard to dial the desired telephone number. Either methodassumes that the user has established a network connection and launchedthe ZeroPlus client application.

Once the telephone number of the called party is entered into theapplication by either of the two methods above, the user can eitherpress the <enter> key on the keyboard or click the “Talk” button on theZeroPlus GUI. This action initiates a message, with the called party'stelephone number and the requested current IP address, to the gatekeeper115. The gatekeeper will look up the called party's telephone number onthe database server and, using data therein, determine the current orlast known IP address for the called party's telephone number. Thegatekeeper sends a message with the called party IP address back to thecalling party's client.

At this juncture, the calling party's client launches the standard callsetup messages directly to the called party's IP address. If the calledparty is online, the client will respond in kind with the standard setupmessage responses and, once negotiated, the voice session will be openedin both directions. If the called party is not online and has callforwarding engaged, the calling party's client will attempt to forwardthe call based on forwarding information sent when it first requestedthe number translation.

Accordingly, FIG. 2 shows an access dialing sequence 201 dialed by auser to connect to the plan Internet gateway, and sequences 211 and 221,used to connect with the call recipient. An on-line computer accessesthe gateway by dialing sequence 201 beginning with element 203, which isa leading “0” digit, followed by the caller's registered ZeroPlusInternet telephone number 205 and a corresponding user PIN code 206.

After sequence 201 gains access to the gateway 115, the caller can placecalls using sequence 211 to obtain an on-net computer-to-computer call.To complete a desired connection, the gatekeeper 115 accesses a database(not shown) which tracks the IP addresses corresponding with thedestination number. The destination number selected by the calling useris then associated with the IP address of the destination computer 157.

Alternately, an on-net caller can use sequence 221 to place a call to anoff-net conventional telephone 155. The only difference between sequence211 and sequence 221 is that on-network calls in sequence 211 areproceeded with a “0” while off-network calls to conventional telephonesin sequence 221 are proceeded with a “1.” Thus, to dial an off-nettelephone number, a ZeroPlus user simply dials sequence 221 (“1” plusthe destination telephone number) from the ZeroPlus Graphical UserInterface (GUI) client software, thus sending the information to theInternet Telephony gateway best situated to deliver the call costeffectively, which is usually the gateway closest to the destination. Inthis way, the simplified dialing plan has originated a call from a datanetwork such as the Internet 129 to the PSTN.

Thus, the access code for gateway calling consists of a combination ofboth the registered ZeroPlus telephone number and a member PIN. Numberportability is made available by the ZeroPlus system by deriving bothZeroPlus access numbers and desired destination numbers from the users'conventional telephone numbers. Upon entering their gateway access code,users will be prompted for the telephone number they wish to reach.Again, this can be any on-net “0” plus telephone number or an off-net“1” plus telephone number.

ZeroPlus Operating Modes

Calls can be placed in various modes, including PC-to-PC, PC-to-Phone,Phone-to-PC, and Phone-to-Phone. Further, PC-to-PC calls can featurecall waiting, call forwarding, call transfer, three-way calling, andvoice mail. User computer A 103, user computer B 157 and user computer C159 are referred to as Stations A, B, and C in this section.

This description assumes that all parties/stations (A, B, C, and D) havedata connectivity and have already logged into ZeroPlus, and that an IPAddress is already associated with each these stations. Note thatstation D does not explicitly appear on the diagrams.

As shown in FIG. 3, in PC-to-PC calls, Station A 103 dials Station B's157 or 159 ZeroPlus number. The ZeroPlus application sends an AdmissionRequest message which contains the calling number (Station A) and thecalled number (Station B) to the Gatekeeper 115. The Gatekeeper respondswith an Admission Confirm containing IP Addresses which route to StationB. When Station B receives a Setup message, it sends an AuthorizationRequest to the Gatekeeper. The Gatekeeper responds to Station B with anAuthorization Confirm. Since it is available to accept the call, StationB then responds to Station A's Setup message with an Alerting message,and begins to ring. Station A begins to ring when it receives theAlerting message from Station B. When Station B answers the call, aConnect message is sent to Station A and a voice channel is opened fromStation B to Station A. When Station A receives the Connect message fromStation B, it responds to the Connect message with a ConnectAcknowledgement and opens a voice channel from Station A to Station B.

Signaling Messages Interacting with the Gatekeeper

Various signaling message formats are used between end-point stations,gateways and the gatekeeper. All these messages formats are speciallydefined for this inventions.

Gatekeeper Logging-In Messages

Gatekeeper Request—FIG. 5 shows the Gatekeeper Request MessageInformation Elements format. When the user logs in, a Gatekeeper RequestMessage is sent from the station to the gatekeeper to request uservalidation.

Gatekeeper Confirm—FIG. 6 a shows the Gatekeeper Confirmation MessageInformation Elements (Section 1) format. FIG. 6 b shows the GatekeeperConfirmation Message Information Elements (Section 2) format. Thegatekeeper sends a Gatekeeper Confirm back to the end station inresponse to a Gatekeeper Request if the user information is valid.

Gatekeeper Reject—FIG. 7 shows the Gatekeeper Rejection MessageInformation Elements format. The gatekeeper sends a Gatekeeper Rejectback to the end station in response to a Gatekeeper Request if the userinformation is invalid.

Call Setup Messages

Admission Request—FIG. 8 shows the Admission Request Message InformationElements format. When a calling station initiates a call, it collects afarend number. This number along with the calling number is passed tothe gatekeeper in the Admission request Message.

Admission Confirm—FIG. 9 a shows the Admission Confirmation MessageInformation Elements (Section 1) format. FIG. 9 b shows the AdmissionConfirmation Message Information Elements (Section 2) format. Thegatekeeper sends an Admission Confirmation Message back to the callingstation in response to an Admission Request Message if the gatekeepersuccessfully translates the called number.

Admission Reject—FIG. 10 shows the Admission Reject Message InformationElements format. The gatekeeper sends an admission Reject Message backto the calling station in response to an Admission Request Message ifthe gatekeeper is unsuccessfully in translating the called number.

Bandwidth Management Messages

Bandwidth Request—FIG. 16 shows the Bandwidth Request MessageInformation Elements format. A gateway sends a gatekeeper a BandwidthRequest Message to request a bandwidth change to the Class of Service.

Bandwidth Confirm—FIG. 17 shows the Bandwidth Confirmation MessageInformation Elements format. The gatekeeper sends a gateway a BandwidthConfirm Message in response to a Bandwidth Request Message if thegatekeeper can allocate bandwidth of the Class of Service for this call.

Bandwidth Reject—FIG. 18 shows the Bandwidth Reject Message InformationElements format. The Gatekeeper sends the Gateway a Bandwidth RejectMessage in response to a Bandwidth Request Message if the gatekeepercannot allocate bandwidth of the Class of Service for this call.

Faxcall—FIG. 19 shows the FaxCall Message Information Elements format.The gateway (that detected the fax call) sends a FaxCall Message to theFarend Gateway to inform the Farend Gateway to change its class ofservice (or compression).

Trunks Busy—FIG. 20 shows the GK Trunks Busy Message 0x4E InformationElements format. This message is sent from a gatekeeper to a gateway torequest “busying out” or disabling the remaining available channelsbecause bandwidth constrains the network.

Trunks Busy ACK—FIG. 21 shows the GK Trunks Busy ACK Message 0x4FInformation Elements format. FIG. 22 shows the GK Trunks Busy ACKMessage 0x4E Information Elements format. These messages are sent from agateway to a gatekeeper to acknowledge the busy trunks request message.

Trunks Unbusy—FIG. 23 shows the GK Trunks Unbusy Message 0x4CInformation Elements format. This message is sent from a gatekeeper to agateway to request “unbusying out” or enabling all “busied out” channelsbecause of bandwidth availability.

FIG. 24 shows the GK Trunks Unbusy ACK Message 0x4D Information Elementsformat. These messages are sent from a gateway to a gatekeeper toacknowledge the unbusy trunks request message.

Other Messages

Heartbeat—FIG. 25 shows the Heartbeat Message Information Elementsformat. A station sends a Heartbeat message to the gatekeeper regularlyafter it receives a Gatekeeper Confirm message after the station logsin. The message tells the gatekeeper that the station is currently upand running and also tells the gatekeeper the station is currently oncall.

To further illustrate the invention, various calling features aredescribed in terms of Zeroplus messages.

PC to PC—Forward Unconditional

FIG. 26 illustrates the case in which Station B unconditionally forwardsreceived calls to Station C. Station A dials Station B's ZeroPlusnumber. The ZeroPlus application sends an Admission Request containingthe calling number (Station A) and the called number (Station B) to theGatekeeper. The Gatekeeper responds with an Admission Confirm messagecontaining IP Addresses which route to Station B. Since Station B is inforward mode, the Admission Confirm message also contains forwardinginformation (unconditionally forwarded to Station C).

Since Station B is unconditionally forwarded, Station A's ZeroPlusapplication sends a Setup message to Station C. When Station C receivesthe Setup message, it sends an Authorization Request to the Gatekeeper,which responds to Station C with an Authorization Confirm. Since StationC is available to accept the call, it then responds to Station A's Setupmessage with an Alerting message and begins to ring. Station A producesa ringback sound when it receives the Alerting message from Station C.When Station C answers the call, a Connect message is sent to Station Aand a voice channel is opened from Station C to Station A. When StationA receives the Connect message from Station C, it responds with aConnect Acknowledgement and opens a voice channel from Station A toStation C.

PC to PC—Forward on Busy

FIG. 27 illustrates the case in which Station B forwards incoming callswhen busy to Station C. Station A dials Station B's ZeroPlus number. TheZeroPlus application sends an Admission Request containing the callingnumber (Station A) and the called number (Station B) to the Gatekeeper.The Gatekeeper responds with an Admission Confirm message containing IPAddresses which route to Station B. Since Station B is in forward mode,the Admission Confirm message also contains forwarding information(forwarded on busy to Station C).

Station A's ZeroPlus application sends a Setup message to Station B.Station B is already on a call with Station D (not shown) when itreceives Station A's Setup message. Therefore, Station B responds toStation A's Setup message with a Release Complete and continues on thecall with Station D. Upon receiving the Release Complete message,Station A determines that Station B is currently busy and uses theforwarding information received in the initial Admission Confirm messagefrom the Gatekeeper to send another Admission Request to the Gatekeeper.The Gatekeeper responds with an Admission Confirm message.

When Station A receives the Admission Confirm message from theGatekeeper, it sends a Setup message to Station C. When Station Creceives the Setup message, it sends an Authorization Request to theGatekeeper, which responds to Station C with an Authorization Confirm.Since it is available to accept the call, Station C then responds toStation A's Setup message with an Alerting message and begins to ring.When Station A receives the Alerting message from Station C, a ringbacksound is heard. When Station C answers the call, it sends a Connectmessage to Station A and opens a voice channel from Station C to StationA. When Station A receives the Connect message from Station C, itresponds with a Connect Acknowledgement and opens a voice channel fromStation A to Station C.

PC to PC—Forward on No Answer

FIGS. 28 a and 28 b illustrate the case in which Station B does notanswer, and forwards calls to Station C. Station A dials Station B'sZeroPlus number. The ZeroPlus application sends an Admission Requestcontaining the calling number (Station A) and the called number (StationB) to the Gatekeeper. The Gatekeeper responds with an Admission Confirmcontaining IP Addresses which route to Station B. Since Station B is inforward mode, the Admission Confirm message also contains forwardinginformation (forwarded on no answer to Station C).

Station A's ZeroPlus application sends a Setup message to Station B.Station B is currently no on a call. Upon receiving Station A's Setupmessage, Station B sends an Authorization Request to the Gatekeeper,which responds with an Authorization Confirm to Station B. Since StationB is available to accept this call, it sends Station A an Alertingmessage and begins to ring. Upon receiving the Alerting message fromStation B, Station A emits a ringback sound. After five rings, sinceStation A has received information to forward calls on no answer, toStation C. Therefore, Station A stops ringing and sends a Disconnectmessage to Station B to begin disconnecting the call. Station A alsosends an End-of-Call and an Admission Request message to the Gatekeeper.

To complete disconnecting the call between stations A and B, in responseto Station A's Disconnect message, Station B sends a Release message andalso stops ringing. When Station A receives Station B's Release message,it responds by sending a Release Complete message to Station B, whichcompletes disconnecting the call from Station A's perspective. ReceivingStation A's Release Complete message completes disconnecting the callfrom Station B's perspective.

The Gatekeeper responds with an Admission Confirm message to Station A.When Station A receives the Admission Confirm message from theGatekeeper, it sends a Setup message to Station C. When Station Creceives the Setup message, it sends an Authorization Request to theGatekeeper, which responds with an Authorization Confirm to Station C.Since Station C is available to accept the call, it then responds toStation A's Setup message with an Alerting message and begins to ring.When it receives the Alerting message from Station C, Station Acommences ring back. When Station C answers the call, it sends a Connectmessage to Station A and opens a voice channel from Station C to StationA. When Station A receives the Connect message from Station C, itresponds with a Connect Acknowledgement and opens a voice channel fromStation A to Station C.

PC to PC—Forward on No Response

FIG. 29 illustrates the case in which on no response, Station B forwardscalls to its station to Station C. Station A dials Station B's ZeroPlusnumber. The ZeroPlus application sends an Admission Request containingthe calling number (Station A) and the called number (Station B) to theGatekeeper. The Gatekeeper responds with an Admission Confirm containingIP Addresses which route to Station B. Since Station B is forwarded, theAdmission Confirm message also contains forwarding information(forwarded on no response to Station C).

Station A's ZeroPlus application sends a Setup message to Station B.Station B is currently not logged into ZeroPlus. After three seconds,Station A resends the Setup message to Station B. After another threeseconds, Station A's ZeroPlus application determines that there is noresponse from Station B. Since Station A has forwarding on no responseinformation for Station B, it sends another Admission Request to theGatekeeper.

The Gatekeeper responds with an Admission Confirm message to Station A.When Station A receives the Admission Confirm message, it sends a Setupmessage to Station C. When Station C receives the Setup message, itsends an Authorization Request to the Gatekeeper, which responds with anAuthorization Confirm to Station C. Since it is available to accept thecall, Station C then responds to Station A's Setup message with anAlerting message and begins to ring. When it receives the Alertingmessage from Station C, Station A commences ringback. When Station Canswers the call, it sends a Connect message to Station A and opens avoice channel from Station C to Station A. When Station A receives theConnect message from Station C, it responds with a ConnectAcknowledgement and opens a voice channel from Station A to Station C.

PC to PC—Call-Waiting

FIGS. 30 a and 30 b illustrate the case in which Station B has thecall-waiting feature enabled, is talking to Station A, and receives anincoming call from Station C. Station A dials Station B's ZeroPlusnumber. The ZeroPlus application sends an Admission Request containingthe calling number (Station A) and the called number (Station B) to theGatekeeper. The Gatekeeper responds to Station A with an AdmissionConfirm message containing IP Addresses which route to Station B. WhenStation A receives the Admission Confirm message, it sends a Setupmessage to Station B.

Since Station B is currently not on a call, when it receives the Setupmessage from Station A it sends an Authorization Request to theGatekeeper, which responds with an Authorization Confirm to Station B.Since it is available to accept the call, Station B then responds toStation A's Setup message with an Alerting message and begins to ring.When it receives the Alerting message from Station B, Station Acommences ringback. When Station B answers the call, it sends a Connectmessage to Station A and opens a voice channel from Station B to StationA. When Station A receives the Connect message from Station B, itresponds with a Connect Acknowledgement and opens a voice channel fromStation A to Station B.

While Station A and Station B are conducting their call, Station C dialsStation B's ZeroPlus number. The Station C ZeroPlus application sends anAdmission Request containing the calling number (Station C) and thecalled number (Station B) to the Gatekeeper. The Gatekeeper responds toStation C with an Admission Confirm message containing IP Addresseswhich route to Station B. When Station C receives the Admission Confirmmessage, it sends a Setup message to Station B.

Station B is currently on a call with Station A. Since Station B has thecall-waiting feature enabled, when it receives the Setup message fromStation C, Station B sends an Authorization Request to the Gatekeeper.The Gatekeeper responds with an Authorization Confirm to Station B.Since it is available to accept the call, Station B then responds toStation C's Setup message with an Alerting message. At this time,Station B hears the call-waiting tone. When it receives the Alertingmessage from Station B, Station C begins ringback.

Station B clicks on the GUI Flash button to answer the call from StationC. Upon receiving the Suspend message from Station B, Station A closesthe voice channel from itself to Station B and responds with a SuspendAcknowledgement message. Upon receiving the Connect message from StationB, Station C opens a voice channel from itself to Station B and respondswith a Connect Acknowledgement message to Station B, thus answering thenew call.

PC to PC—Blind Transfer

FIGS. 31 a, 31 b and 31 c illustrate the case in which Station B has thetransfer feature enabled.

Station A dials Station B's ZeroPlus number. The Station A ZeroPlusapplication sends an Admission Request containing the calling number(Station A) and the called number (Station B) to the Gatekeeper. TheGatekeeper responds to Station A with an Admission Confirm messagecontaining IP Addresses which route the call to Station B. When StationA receives the Admission Confirm message from the Gatekeeper, it sends aSetup message to Station B. Since Station B is currently not on a call,when it receives the Setup message from Station A it sends anAuthorization Request to the Gatekeeper. The Gatekeeper responds toStation B with an Authorization Confirm. Since it is available to acceptthe call, Station B then responds to Station A's Setup message with anAlerting message and begins to ring. When it receives the Alertingmessage from Station B, Station A begins to ringback. When Station Banswers the call, it sends a Connect message to Station A and opens avoice channel from Station B to Station A. When Station A receives theConnect message from Station B, it responds with a ConnectAcknowledgement and opens a voice channel from Station A to Station B.

Next, the Station A user verbally requests to be transferred to StationC. The Station B user clicks on the Transfer button. This event sends aSuspend message to Station A and closes the voice channel from Station Bto Station A. Upon receiving the Suspend message from Station B, StationA closes the voice channel from itself to Station B and responds with aSuspend Acknowledgement. Station B acknowledges receipt of the SuspendAcknowledgement message from Station A. Clicking the GUI Transfer buttonat Station B also initiates dialing the second leg of the transfer. TheGUI prompts the Station B user to enter a number to dial. Station B thenenters Station C's ZeroPlus number and clicks on the Dial button, whichinitiates Station B transferring to Station C.

Station B's ZeroPlus application sends an Admission Request containingthe calling number (Station B) and the called number (Station C) to theGatekeeper. The Gatekeeper responds to Station B with an AdmissionConfirm message containing IP Addresses which route to Station C. WhenStation B receives the Admission Confirm message, it sends a Setupmessage to Station C. Since Station C is currently not on a call when itreceives the Setup message it sends an Authorization Request to theGatekeeper, which responds with an Authorization Confirm to Station C.Since it is available to accept the call, Station C then responds toStation B's Setup message with an Alerting message and begins to ring.When it receives the Alerting message from Station C, Station B beginsringback.

Station B completes the blind transfer by clicking the Transfer buttonbefore Station C has answered. Station B sends a Transfer messagecontaining Station C's number to Station A. Upon receiving the Transfermessage from Station B, Station A does the following: responds toStation B with a Transfer Acknowledgement message, and sends theGatekeeper an End of Call and an Admission Request message. When StationB receives the Transfer Acknowledgement message, it sends an End Of Callmessage to the Gatekeeper for each of the transfer legs. Station B hascompleted its part of the transfer.

The Gatekeeper sends to Station A an Admission Confirm messagecontaining IP Addresses which route to Station C. When Station Areceives the Admission Confirm message, it sends a Setup message toStation C. When it receives the Setup message from Station A, Station Csends an Authorization Request to the Gatekeeper. The Gatekeeperresponds to Station C with an Authorization Confirm. Station Cdetermines that the Setup message from Station A is due to a transfer,then, since it is available to accept the call, responds to Station A'sSetup message with an Alerting message and continues to ring. When itreceives the Alerting message from Station C, Station B begins to ring.When Station C answers the call, a Connect message is sent to Station Aand a voice channel is opened from Station B to Station A. When StationA receives the Connect message from Station B, it responds to theConnect message with a Connect Acknowledgement and opens a voice channelfrom Station A to Station B.

PC to PC—Consultative Transfer

FIGS. 32 a, 32 b and 32 c illustrate the case in which Station B has thetransfer feature enabled. Station A dials Station B's ZeroPlus number.The Station A ZeroPlus application sends an Admission Request containingthe calling number (Station A) and the called number (Station B) to theGatekeeper. The Gatekeeper responds to Station A with an AdmissionConfirm message containing IP Addresses which route to Station B. WhenStation A receives the Admission Confirm message, it sends a Setupmessage to Station B. Since Station B is currently not on a call, whenit receives the Setup message from Station A it sends an AuthorizationRequest to the Gatekeeper. The Gatekeeper responds with an AuthorizationConfirm to Station B. Since it is available to accept the call, StationB then responds to Station A's Setup message with an Alerting messageand begins to ring. When it receives the Alerting message from StationB, Station A begins ringback. When Station B answers the call, it sendsa Connect message to Station A and opens a voice channel from Station Bto Station A. When Station A receives the Connect message from StationB, it responds to the Connect message with a Connect Acknowledgement andopens a voice channel from Station A to Station B.

Next, Station A verbally requests to be transferred to Station C.Station B clicks on the Transfer button, which sends a Suspend messageto Station A and closes the voice channel from Station B to Station A.Upon receiving the Suspend message from Station B, Station A closes thevoice channel from itself to Station B and responds with a SuspendAcknowledgement. Station B acknowledges the receipt of the SuspendAcknowledgement message from Station A. Clicking the Station B'sTransfer button also initiates dialing the second leg of the transfer.The GUI prompts the Station B user to enter a number to dial. TheStation B user then enters Station C's ZeroPlus number and clicks on theDial button, which initiates Station B dialing Station C.

Station B's ZeroPlus application sends an Admission Request containingthe calling number (Station B) and the called number (Station C) to theGatekeeper. The Gatekeeper responds to Station B with an AdmissionConfirm message containing IP Addresses which routes to Station C. WhenStation B receives the Admission Confirm message from the Gatekeeper, itsends a Setup message to Station C. Since Station C is currently not ona call when it receives the Setup message from Station B, it sends anAuthorization Request to the Gatekeeper. The Gatekeeper responds with anAuthorization Confirm to Station C. Since it is available to accept thecall, Station C then responds to Station B's Setup message with anAlerting message and begins to ring. When it receives the Alertingmessage from Station C, Station B begins ringback. When Station Canswers the call, it sends a Connect message to Station B and opens avoice channel from Station B to Station C. When Station B receives theConnect message from Station C, it responds with a ConnectAcknowledgement and opens a voice channel from Station C to Station A.

After Station C has answered, the Station B user completes theconsultative transfer by clicking the Transfer button. Station B sends aTransfer message containing Station C's number to Station A. Uponreceiving the Transfer message, Station A does the following: respondswith a Transfer Acknowledgement message to Station B, and sends theGatekeeper an End of Call and an Admission Request message. When StationB receives the Transfer Acknowledgement message, it sends an End Of Callmessage to the Gatekeeper for each of the transfer legs. Station B hascompleted its part of the transfer.

Next, the Gatekeeper sends to Station A an Admission Confirm messagecontaining IP Addresses which route to Station C. When Station Areceives the Admission Confirm message, it sends a Setup message toStation C. When it receives the Setup message Station C sends anAuthorization Request to the Gatekeeper, which responds with anAuthorization Confirm to Station C. Station C determines that the Setupmessage from Station A is due to a transfer and then, since it isavailable to accept the call, responds to Station A's Setup message witha Connect message. Station C closes the voice channel from itself toStation B and reopens a voice channel from itself to Station A. WhenStation A receives the Connect message from Station C, it sends aConnect Acknowledgement to Station C and opens a voice channel fromitself to Station C.

Calls Via Internet Involving Conventional Telephones

The system also manages calls to or from conventional telephones. Thegateway gatekeeper and gateway seamlessly bridge calls from the Internetdestined to the PSTN and calls from the PSTN to the Internet, or PSTN toPSTN via Internet. When a call goes from PSTN to PSTN, the gatewayresponsible for the specific area and city code at the point of originhandles that portion of the call, and a gateway responsible for thedestination area and city code handles the termination side of the call.Each side of the call is treated as a separate call which is bridgedtogether over Internet or other data network that both gateways have incommon.

Note that a gatekeeper also includes a gateway, in addition to its callmanagement functions. The gateway also is used for the PSTN side of aPC-to-telephone and a telephone-to-PC call. Whenever the PSTN or anotherswitch, PBX, IVR or other call center device is utilized in theorigination and/or the termination of a call, a gateway must also beused at any point where traditional telecommunication technology isinvolved.

For phone-to-phone calls, neither party uses a PC. Both sides arehandled by gateways as previously explained. For PC-to-phone orphone-to-PC calls, ZeroPlus software is required only on the PC side ofthe call, and a gateway will handle the other side of the call. PC-to-PCcalls require that both parties have ZeroPlus software.

The gatekeeper determines which is the “best way” to route calls. Thegatekeeper has routing tables much like those in traditionaltelecommunications switches. These routing tables are addressed any timea calling party addresses a call request to the gatekeeper. There aretwo completely different routing methodologies. One is for on-net calls(i.e. calls originating from and terminating at ZeroPlus clients on theInternet). The second is a more sophisticated routing methodology forcalls originating on the Internet and terminating off-net, i.e. callswhere the calling party is connected via the Internet and the calledparty is reached via a one (“1”) plus termination through a gateway tothe PSTN. In this situation the gatekeeper routing tables determine theleast cost route to terminate the call.

The “best way” is a combination of the least cost route and availableresources. In the event that all resources are available (i.e. allgateways for termination of off-net traffic in all cities still haveports available to handle the call), the default route will be the leastcost one. For example, if a call is destined for area code 512 (Austin,Tex.) and there is a gateway on the network that provides local servicein Austin, the least cost route would terminate the call in Austinwithout applying any long distance leg. But, if the Austin gateway wereto have all ports busy at the time of the call attempt, it would benecessary to terminate the call through another gateway on the network.In this case a routing table would route the call anywhere except Texasdue to the large premium on calls that originate and terminate in Texas.It actually costs less to terminate a call in Oklahoma and pay adiscount long distance rate to back haul the call to Texas.

The programming of the routing tables emulates that which is standardand ordinary in the telecommunications industry today. Programming therouting tables does not require a programmer, only an administrator whominimizes costs associated with calls destined for different areas ofthe country.

The gatekeeper database has routing information and tables of datarelated to the IP addresses. The gatekeeper determines the IP addressesof any device addressed by the service. In the case of the end-user,once data connectivity has been established, it allows the computer tobe assigned an IP address by the Internet Service Provider (ISP), andthe user launches the ZeroPlus Application. When the application startsup it opens a dialog box and requires the user to input his or her tendigit ZeroPlus number and the associated four digit PIN. After the userenters the appropriate information into the dialog box and clicks the OKbutton, the application sends to the gatekeeper a validation requestcontaining the ZeroPlus number, PIN, and current IP address of thestation. The gatekeeper looks up the ZeroPlus number in the database andverifies that both the PIN and the ZeroPlus number are correct, sends avalidation accepted message to the ZeroPlus application and updates theuser's account with the current IP address. The gatekeeper also sendsback information associated with the current features (i.e. callforwarding, call waiting, three way calling, call transfer, voice mail)to which the member has access. For example, if the member has “callforward set on no answer” assigned to his/her office ZeroPlus telephonenumber, the ZeroPlus telephone number of that ZeroPlus station will bepassed back to the application. If the user has call transfer, three-waycalling, and call waiting capability, the Gatekeeper will includeinformation in the message to the application notifying it to acceptrequests for these features. If the member has subscribed to voice mail,the IP address of the voice mail server or its “phone number” will bepassed to the application. Upon receipt of a confirmation, the endstation will commence sending “heartbeat” messages to the gatekeeper sothat the gatekeeper will know that the station is still “logged on.”

Traditional telephone network users are restricted to telephone deviceswhich are physically connected to a set of wires within a fixedstructure, such as a home. With portable telephones such as cellularphones, the equipment is mobile but the telephone number is not. Mobilecellular telephone numbers are device-specific to a particular celltelephone. Cell telephone users lose number portability because theyhave to use a specific cell telephone registered for that telephonenumber. The ZeroPlus architecture provides a device-independenttelephone number access strategy. This enables mobile users to use theirportable telephone number during travel without necessarily taking theirphysical portable telephone with them. ZeroPlus users with at least 28.8Kbps access to a digital data network and a computer with the ZeroPlusGUI have access to all incoming calls and are able to make outgoingcalls on their current ZeroPlus account. Members may use ZeroPlus withtelephones when they do not have access to their computer. Inbound callsplaced to the user computer are not forwarded to conventional telephonesunless they subscribe to and use the call forward-feature of the serviceto forward their ZeroPlus calls to an off-net telephone number. Tooriginate ZeroPlus calls without access to their computers, members diala PSTN access number and follow the instructions to connect eitheron-net or off-net calls. Billable calls are posted to their ZeroPlusaccounts.

Traditional telephone network users have grown accustomed to a varietyof add-on features and Lip-grades available on the PSTN. The ZeroPlussystem, through its robust combination of technology, hardware, softwareand connectivity to the PSTN, also makes a large suite of featuresavailable to users. Upgrades (for an added fee) include call forwarding,call waiting, call transfer, caller ID, “follow me” service, voice mailand conference calls, as described previously.

The ZeroPlus plan also provides connection shortcuts to frequentlycalled numbers. The list is called the “ZP Pals” list. Once thegatekeeper has sent the validation acceptance message, it can accesswhat ZeroPlus users this member has in his/her ZP Pals list and what ZPPals have this member in their list. It sends a message to the “loggingin” station containing the ZP Pals list, what the IP address is for eachof the “pals” that are online, and what members are interested in theonline status of this station. An exception to this is that theGatekeeper will not return IP addresses for members if “Call Blocking”applies. This feature prevents other users from determining onlinestatus or placing calls to the blocked ZeroPlus number. The end stationwill then display the ZP Pals who have gatekeeper-supplied current IPaddresses with the “online indicator” and send each of them, along withthe members having this user in their ZP Pals list, a message tellingthem the member is online. ZP Pals on the list without an IP addresswill be displayed with the “offline indicator.” The end station willnotify all “interested parties” when it is shutting down so that theother stations will know to update the status for the user on thisstation to “offline.” In the event that the gatekeeper fails to receivea “heartbeat” from a station it believes to be online, it will send allinterested parties notification that the station is “offline,” updatethe status it has on that station to reflect the fact that it isoffline, and close out any calls that might be active for that station.This is to address the problem that computers do “crash” occasionally orlose Internet connectivity. It is not sufficient to rely on a “clean”shutdown for the end stations.

ZeroPlus provides phone number location independence. The ZeroPlusnumber and PIN code as well as the ZP-Pals list, feature set, andpossible affiliate partner logos are all location independent. Forexample, if a member signs in through an affiliate partner, such as TalkCity and has a home telephone number which is “1 301 555 1212,” thecorresponding ZeroPlus number “0 301 555 1212” will be assigned to theirhome computer. Upon logging onto ZeroPlus, the gatekeeper checks andvalidates the account and then notifies the ZeroPlus application of allof the services that the user has available. The application would alsobe provided with the user's ZP-Pals list, and the current status (i.e.on-line or off-line) of each of those individuals. If a ZeroPlus memberis visiting a family which has a multimedia computer but is not aZeroPlus member and does not have the application resident on their harddrive, then the only thing that the member would have to do would be todownload the application and log in using his/her ZeroPlus number andPIN. Once the user logs into that computer, all normal ZeroPluscapabilities would be available at that computer. The ZeroPlus numberand all associated account features are completely portable and hardwareindependent. While traditional home telephone numbers require a fixedport on a switch, or the number has to be forwarded to another fixedport on a switch. ZeroPlus numbers are completely hardware and portindependent. The numbers are routed, not switched.

What has been described is a private dialing plan wherein conventionaltelephone numbers are used as the basis for creating caller accessnumbers and the number dialed to reach the recipient. Although describedwith respect to a particular exemplary embodiment, principles of theinvention may be exploited in other dialing systems and telephoniccommunication methods. Accordingly, the embodiments described hereinshould be regarded as merely illustrative of the invention and shouldnot be construed as limiting the scope of the invention.

1. A method comprising a private dialing plan for communication ofpacketized voice on a packet-based network involving a network gateway,wherein: on-network access to the plan gateway is accomplished by usinga multi-part access sequence consisting of a leading “0,” followed bythe caller's conventional telephone number or other telephone numberregistered with the plan, followed by a multiple digit user PIN number;off-network access to the plan is provided through telephone dial-upaccess to a gateway using the public telephone switching system; callsto on-network IP addresses are placed by dialing or keying a sequenceconsisting of a leading “0,” followed by the telephone number registeredwith the plan for that user IP address; and calls to off-netconventional telephones are placed by dialing a “1,” followed by thetelephone number to be called.
 2. The method of claim 1 wherein asignaling protocol such as Q.931 is used to establish, maintain andrelease switched connections over the network.
 3. The method of claim 1wherein database search keys based on member registered conventionaltelephone numbers are used to access various plan database information,such as the IP address corresponding with the called number and anyoptional services or features available for that member.
 4. The methodof claim 1 wherein the gatekeeper determines which is the optimum way toroute on-net calls.
 5. The method of claim 1 wherein calls originate onthe Internet and terminate off-net, and the gatekeeper routing tablesdetermine the least cost route to terminate the call.
 6. The method ofclaim 1 wherein optional services are available for PC-to-PC calls,including: forward unconditional; forward on busy; forward on no answer;forward on no response; call waiting; Blind transfer; and consultativetransfer.